Support for Extensibility and Re-usability in CYES-C++

نویسندگان

  • Raju Pandey
  • J. C. Browne
چکیده

1. Introduction: There is significant interest in concurrent programming due to widespread availability of parallel and distributed systems. The design and implementation of concurrent programs for the parallel and distributed systems has proven to be extremely difficult. Concurrent programs are difficult to design, implement, and maintain because changes in a concurrent program (through addition of new components or modification of existing components) requires re-implementation of some or all components. Also, it is difficult to reuse specifications of components and interactions. Concurrent object-oriented programming languages show promise in alleviating the modularity and extensibility problems. Concurrent objects form a natural basis for modeling entities of applications. Further, extensibility is naturally supported through the notion of inheritance. Many object-oriented programming languages [3, 5, 1, 2] have been proposed that extend a sequential object-oriented programming language by adding mechanisms for specifying concurrency and interaction. We note that the modifiability and extensibility problems are present in many concurrent object-oriented programming languages as well. For instance, there is a problem with the inheritance of method implementations in concurrent object-oriented programming languages. This problem, termed the inheritance anomaly [7], occurs when implementations of methods of a class cannot be inherited in a subclass due to the differences in synchronization constraints of the class and the subclass. Concurrent classes therefore cannot be extended easily. Similarly, interaction specifications cannot be reused easily. The goals of the C-YES project, being developed at University of California at Davis and the University of Texas at Austin, are to develop concurrent programming models, languages and tools that facilitate development of programs that evolve during the life time. We have developed a model of concurrent computation, called the C-YES model [10] towards supporting extensibility. The C-YES model is based on the observation that there are two distinct behaviors of components of a concurrent program: computational behavior and interaction behavior. The computational behavior of a component specifies the operations performed during an execution of the component. The interaction behavior of a component determines the manner in which the component affects or is affected by other components. Concurrent programs can be extended easily if specifications of computational and interaction behaviors are separated. We call this approach " separation of concerns. " We have designed an object-oriented concurrent programming, called CYES-C++. CYES-C++ is a concurrent extension of the C++ [12] programming language. The basis for the design of CYES-C++ is derived from the concept of separation of …

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

CYES-C++: A Concurrent Extension of C++ through Compositional Mechanisms

This paper describes a concurrent extension of the C++ programming language[1]. The extended C++ language, which we call CYES-C++, supports highly concurrent objects, implements a general concurrent method invocation mechanism, fully integrates the notion of inheritance with concurrency, and supports reusability of both method and synchronization specifications. The computational model [4] for ...

متن کامل

Re-usability of traffic signs for inactive drivers with consideration of personal characteristics and sign features

There has been an increasing concern about inactive drivers who would easily lead to road accidents and fatalities once return to driving. This study investigated the re-usability of traffic signs for inactive drivers with consideration of driver factors and cognitive sign features. Fifty-seven Hong Kong Chinese, who possessed a full driving license but had not driven for an extended period, co...

متن کامل

Flexible Database Transformations: Teh SERF Approach

Database transformations is a critical task that occurs in many different domains. Schema evolution is one important class of problems for database transformations. In our work, we use existing technology and standards (ODMG, OQL, basic schema evolution primitives) to bring flexibility, extensibility and re-usability to current schema evolution systems, thus allowing the users to conveniently s...

متن کامل

Flexible Database Transformations: The SERF Approach

Database transformations is a critical task that occurs in many different domains. Schema evolution is one important class of problems for database transformations. In our work, we use existing technology and standards (ODMG, OQL, basic schema evolution primitives) to bring flexibility, extensibility and re-usability to current schema evolution systems, thus allowing the users to conveniently s...

متن کامل

A Blackboard Infrastructure for Object-based Image Interpretation

The paper presents a blackboard infrastructure for the development of object-based image interpretation applications. The infrastructure is based on an abstract deenition of important concepts in image interpretation: data objects, relationships, algorithms, strategies, and models. Building applications with the environment is eeectuated by specializing the abstract concepts. Using abstract con...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007